package com.tedu.api.thread;

/**
 * Thread类下静态方法
 * yield方法   暂停【让】
 * 作用：暂停当前正在执行线程对象【让出当前线程拥有的CPU时间片资源】
 *         并执行其他线程，但是，yield方法存在让CPU时间片没有效果！
 * 案例：    假设教师一个门，只能进入一个一个同学，同时进入两个同学
 *                                第一个同学，你先
 */
public class Thread_yield {
    public static void main(String[] args) {
        Door door=new Door();
        String str="你先";//设定做出让步
        //创建两位同学线程
        Thread students1=new Thread(()->{
            System.out.println("第一位同学");
            //判断：说：你先---让出CPU时间片--几率
            door.enter();
            if (str.equals("你先")){
                Thread.yield();
            }

        });

            Thread students2=new Thread(()->{
                System.out.println("第二位同学");
                door.enter();
            });

            students1.start();
            students2.start();

    }
}
class Door{
    public void enter(){
        System.out.println("进入教室上课~");

    }}
